Embodiments of the presented herein relate to method(s) and apparatus for matching features between applications and devices.
In open platforms such as Google's Android, Tizen, etc., matching features between applications and devices have not identified all electronic devices with various features produced by manufacturers. Performing feature matching between applications and devices, based on features of reference devices defined by the platforms may result in low accuracy in matching applications with the reference device.
Reference devices refer to models of electronic devices of manufacturers that implement only platform features, such as Google Nexus. A matching system can checked compatibility between applications and devices in such a way that the application developers check whether applications normally work on the reference device and the device manufacturers implement features defined in platforms and check whether the features run on the devices which are the same as the reference device.
Performing a matching process between electronic devices and applications based on compatibility verified on platforms, fail to consider ‘device differentiated features’ implemented by various manufacturers and ‘manufacturer features.’ As a result, the matching method might not perform precise matching between applications and devices. In particular, electronic devices implemented on the same platform may increase in type due to the Internet of Things (IoT), etc., and the variety of type of electronic devices to vary a combination of features, thereby seriously increasing the fragmentation of electronic devices. Precise, efficient determination as to whether devices are compatible with an application would be beneficial in order to support various types of devices via platforms; however, performing feature matching based on features of reference devices has limitations on the ability to determine compatibility.
For example, a first platform provider can includes features ‘X’, ‘Y’, and ‘Z’ in a first platform v1 and distribute it, and the device manufacturers implement the features of the platform by using hardware and software. Application developers develop applications by using the Software Development Kit (SDK) of the platform. As time goes by, the platform v1 technically evolves to platform v2, including feature ‘T’. Device manufacturers are capable of developing electronic devices implemented on platform v2, Manufacturer-A (including features ‘Y,’ ‘Z,’ and ‘T’). In the platform evolution, existing features (X, Y, and Z) may be altered, and the altered features are regarded as added features.
As device manufacturers compete with each other for the devices as platforms evolve, they are not differentiated from each other with only the electronic device implementing the same feature. Therefore, device manufacturers are capable of adding features for device differentiation (e.g., feature ‘M’) to electronic devices. For example, Manufacturer-B may implement feature “M.” Although device differentiated features are not included in SDK distributed by platforms, it would be beneficial if device manufacturers had applications using added features to increase the usage of electronic devices. One way for manufacturers to do this is to distribute ad-hoc libraries for the use of corresponding features to application developers. One application developer (e.g., Developer-c) may develop applications including features ‘T’ and ‘M.’ The other application developer (e.g., Developer-a) may develop applications including features ‘Y’ and ‘T.’
In this state, a content service provider that needs to match devices with applications and to show the application list to users may consider that an application developed by the Developer-c includes only feature ‘M.’ In this case, the content service provider may make a matching error whereby it determines that the application developed by the Developer-c is compatible with an electronic device, Manufacture-A (including features Y, Z, and T) as well as electronic device, Manufacture-B (including features M, Z, and T). When a matching process between applications and devices is performed by only features of open platforms, the probability of the matching-error occurring increases. In this case, content service providers are likely to provide applications that cannot be executed on the user's electronic devices.